Fix domain suspend by xend stop
When I stopped xend by xend stop command, a domain suspend processing
is frequently failed. This patch solves the problem.
Step to reproduce:
1. xm new XXX on_xend_stop="suspend"
2. xm start XXX
3. xend stop
In the xend stop, if the domain suspend processing is slept by
state_updated.wait() of waitForShutdown(), then the domain suspend
processing is not waked up again because state_updated.notifyAll()
of _stateSet() is not executed.
For the reason, processing of _on_domains_changed() is waited by
domains_lock.acquire() because the domain suspend processing is
keeping domains_lock and sleeping. The domain suspend processing
got domains_lock at cleanup_domains().
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>